VHDL和Verilog中数组定义、初始化、赋值方法 您所在的位置:网站首页 verilog 寄存器组 VHDL和Verilog中数组定义、初始化、赋值方法

VHDL和Verilog中数组定义、初始化、赋值方法

2023-11-20 12:51| 来源: 网络整理| 查看: 265

0. 前言

        VHDL和Verilog数组的定义、初始化、赋值的方法不只一种,以下是本人常用的方法,可能不是最方便的,但是比较好理解,文中包含了源代码和modelsim仿真,供大家参考学习。

1. VHDL数组定义、初始化、赋值 1)VHDL数组定义

方法:通过TYPE定义个matri_index的数组,数组包含50个数据,数据位数为16;申明了receive_data和send_data两个matri_index的数据。

--define a 16 bit array constant matrix_num: integer := 49; TYPE matrix_index is array (matrix_num downto 0) of std_logic_vector(15 downto 0); signal receive_data, send_data: matrix_index; signal send_cnt: STD_LOGIC_VECTOR(7 downto 0); 2)VHDL数组初始

方法:实际应用里,通常需要在上电复位过程中对变量进行初始化,如果数组个数少时,直接赋初始值即可,但是数组个数多时,可以用循环实现赋值,通常的循环语句有FOR LOOP和WHILE LOOP。(注意变量i申明的位置,需要在process内部,注意变量的赋值方式)

process(clk,reset_n) --循环变量定义并初始化 variable i: integer := 0; begin if (reset_n = '0')then i := 0; --利用while loop循环赋值 while(i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有